Content-based directional placement application launch

ABSTRACT

A user can select content on an interface screen and provide an associated directional placement instruction to launch a new application window that displays the selected content or information associated with the selected content. The directional placement instruction may indicate an area of the screen where the user prefers to display the new application window. Responsive to the initiation of the directional placement instruction, a conversion module converts the selected content into a placeable representation of the new application. Responsive to receipt of the directional placement instruction, a window management system presents the new application window in the user interface in a location based on the directional placement instruction.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation application of and claims priority toU.S. patent application Ser. No. 16/933,759, entitled “Content-BasedDirectional Placement Application Launch,” filed on Jul. 20, 2020, whichis a continuation of and claims priority to U.S. Pat. No. 10,754,536,entitled “Content-Based Directional Placement Application Launch,” filedon Apr. 29, 2013, the disclosures of which are incorporated herein byreference in their entireties.

BACKGROUND

A computer operating system, including its corresponding user interface,allows a user to launch a new application window for presentation to theuser through the user interface. However, the computer operating systemdoes not permit the user to provide input as to the initial placement ofthe new application window and to designate content of the newapplication window by selecting associated content visible in anexisting application window.

SUMMARY

Implementations described and claimed herein address the foregoingproblems by providing for the launch of a new application windowresponsive to receipt of a selection of content on an interface screenand receipt of an associated directional placement instruction.Responsive to initiation of the directional placement, a conversionmodule converts the selected content into a placeable representation ofan application associated with the selected content. The directionalplacement instruction may designate an area within the interface screenfor display of the new application window. The new application window isa window of the application associated with the selected visible contentthat displays the selected content or related content. Additionally, theuser interface can give cooperative feedback to the user responsive toinitiation of the directional placement instruction, such as byhighlighting an application window to be replaced, animating theplaceable representation of the application, etc.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

Other implementations are also described and recited herein.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates two application windows in an example user interfacescreen supported by a content-based directional placement applicationlaunch feature.

FIG. 2 illustrates two application windows in another example userinterface screen supported by a content-based directional placementapplication launch feature.

FIG. 3 illustrates an example sequence of user interface operationsimplementing a content-based directional placement application launchfeature.

FIG. 4 illustrates another example sequence of user interface operationsimplementing a content-based directional placement application launchfeature.

FIG. 5 illustrates example operations for implementing a content-baseddirectional placement application launch feature.

FIG. 6 illustrates an example system that may be useful in implementingthe described technology.

DETAILED DESCRIPTION

Launching an application window includes without limitation initiallyexecuting the application and switching to a new or hidden applicationwindow of an already executing application. In addition, an applicationwindow may include without limitation a window of the operating systemcomponents, an operating system utility, and a special purposeapplication program (e.g., a Web browser program, a word processingprogram, a spreadsheet program).

FIG. 1 illustrates two application windows 100 and 102 in an exampleuser interface screen 104 supported by a content-based directionalplacement application launch feature. A window management system 106 istypically a component of an operating system or user interfaceenvironment but could also be an independent application. The windowmanagement system 106 manages the display, placement, layout,appearance, and other aspects of the application windows 100 and 102, aswell as other windows and user interface characteristics and operations.The window management system 106 also communicates with the operatingsystem to launch new applications responsive to user-executed launchcommands.

The application window 100 presents a search result window displayingsearch results from a Web search engine. The individual search results(such as a search result 108) includes representative text and/or one ormore images along with a browser navigable link, which can be selectedby the user for navigation to a Web site identified by the browsernavigable link. The application window 102 presents results from aweather application or Web site, including a 4-day forecast of weatherin Denver, Colo. A window boundary control 110 divides the displayedarea of the application window 100 and displayed area of the applicationwindow 102, in the illustrated case, separating the application windows.In some implementations, the window boundary control 110 may bemanipulated by the user to change the size and/or location of one orboth windows.

The application windows 100 and 102 are shown in FIG. 1 as beingnon-overlapping windows. However, the described technology is notlimited to non-overlapping windowing environments. For example, in suchenvironments, each application window in an overlapping windowingenvironment may be bounded by a window boundary control, which can bemanipulated by the user to change the location, size, and front-to-backordering (collectively, “placement”) of the potentially overlappingwindows (e.g., the z-ordering of the windows). The window managementsystem 106 receives input through the application windows 100 and 102and through other user interface components (e.g., the keyboardinterface, a touch screen interface, a voice interface, and pointingdevice) and displays the applications windows 102, the window boundarycontrol 110, and other application windows and controls through the userinterface screen 104.

In one implementation, a directional placement instruction triggers alaunch of an application window via the window management system 106.The directional placement instruction can be initiated by one or moreuser actions performed in association with content visible on the userinterface screen 104 (i.e., visible content). Visible content is contenton the user interface screen 104 that is capable of being selected bythe user. Examples of visible content include without limitation: imagesor text displayed in a web browser window (e.g., search results);notification windows that appear on the user interface screen 104 (e.g.,a notification related to a currently-executing application); and icons(e.g., a shortcut icon) that appear in a start menu or on a desktopscreen of the user interface screen 104. Visible content may also referto more than one selectable item (e.g., multiple graphics, text blocks,icons, user interface controls, links, combinations thereof, etc.) whensuch items are selected together.

It should be understood that the launched application window may displaydifferent content than the selected content. For example, a task controlor description for buying some eggs in a task management application maybe selected, dragged, converted into a placeable control, and dropped ata location of the user interface. The window management system 106 maybe configured to recognize the content of the selected item to be a taskfor buying something and therefore launches a shopping application witheggs inserted in the shopping cart. In this scenario, the selectedcontent is a task object or textual description and the content in thelaunched application window is an e-commerce item placed in anappropriate context (e.g., in the shopping cart).

In one implementation, the user initiates a directional placementinstruction by selecting visible content and providing input (e.g.,keyboard or touch input) to indicate an intention to launch a newapplication window associated with the selected visible content.

Responsive to the initiation of the directional placement instruction, aconversion module 112 converts the selected visible content into aplaceable representation (not shown) of an application associated withthe selected visible content. The conversion module 112 may be acomponent of an operating system or user interface environment but couldalso be an independent application The application associated with theselected visible content (i.e., the associated application) is anapplication that may be used to view, edit, or otherwise utilize theselected visible content or content related to the selected visiblecontent. The user may indicate, via the directional placementinstruction (e.g., by dragging the placeable representation), apreference for placement of a launched window of the associatedapplication.

When the user commits to the directional placement instruction (e.g., bytaking action such as releasing a mouse, touchscreen, touchpad, orproviding keyboard input), the window managements system 106 determinesa placement, based on the directional placement instruction, within theuser interface with which to display a window of the associatedapplication.

For example, some application windows are characterized by predefineddisplay parameters (e.g., full screen, a left portion of the screen, atleast half the screen, etc.). Some predefined characteristics mayprovide no constraints or some constraints (e.g., a minimum size) butotherwise leave the window placement up to the window management system106. The directional placement instruction provides the windowmanagement system 106 with one or more such constraints for displayingthe window of the associated application.

When the window management system 106 determines a placement for the newwindow of the associated application, the window is launched accordingto the directional placement instruction. The selected visible contentor content associated with the selected visible content is displayed inthe launched window.

In FIG. 1, a user initiates a directional placement instruction byselecting a graphic that appears in the search result 108 and dragging(e.g., using a mouse, a touchscreen, or touch pad) the graphic away froman original position in the application window 100 to a position on topof the application window 102. When the conversion module 112 detectsthat the dragging operation is occurring, the conversion module 112converts the selected graphic into a placeable representation (notshown) of an application associated with the selected content (e.g., thegraphic). Such conversion may or may not visually change the appearanceof the selected visible content on the user interface. The user maycommit to the directional placement instruction by releasing thedragged, selected visible content over a selected area of the screen(e.g., on the application window 102). In response to the directionalplacement instruction, the window management system 106 launches a newapplication window of the application associated with the selectedcontent in the selected area. The new application window displays theselected graphic or content related to the selected graphic.

The following two examples are provided, although other implementationsof the described technology are contemplated and described herein. Inone example, a user interface may display a notification controlrelating to an alert indicating a received email message, a receivedtext message, a reminder of an event, etc. The notification control,associated with a notifying application (e.g., an email application, amessaging application, a calendar application), receives input via aselection event (e.g., a PointerDown event, a mouse event, a keyboardevent) giving focus to the notification control. If the user moves theselection point (e.g., the Pointer) a predefined distance, the notifyingapplication detects the movement and notifies a component of the windowmanagement system that the notification control is receiving adirectional instruction. The window management system converts thenotification control of the notifying application into a placeablecontrol that can be manipulated by the window management system asdescribed herein, such that an associated application window (e.g., anapplication window for an email application) can be made visible withinthe user interface (e.g., being added to the window layout in accordancewith the directional placement instruction).

The conversion from the notification control to the placeable controlmay or may not result in any visual changes to the notification. In oneimplementation, the notification control visually changes to suggest tothe user that it can be placed in a location to launch the associatedapplication window (e.g., from a notification control to an applicationwindow or an outline of an application window labeled with the name ofthe email application). Other visual changes may be employed. In anotherimplementation, the notification control remains unchanged visually butis converted to a placeable control that is managed by the windowmanagement system for placement of an associated application window.Various visual and nonvisual conversions may be employed.

In another example, a user can select and drag content (e.g., text, animage, an arbitrary control) from a visible application window to launchanother application window associated with the selected content. In thisexample, the content is associated with metadata that can be passed tothe window management system. In this manner, the window managementsystem can use the metadata to identify an appropriate applicationwindow to launch in an appropriate context. For example, if the contentrepresents a phone number, once the initiation of the directionalplacement instructions has been detected, the selected content andassociated metadata (e.g., a telephony application identifier) arepassed to the window management system. The associated metadata may beclosely related to (e.g., tagged to or a component of) the selectedcontent or otherwise provided by the application window containing theselected content. The associated metadata allows the window managementsystem to map the selected content to an appropriate target applicationfor invocation. As a result, the selected content converts to aplaceable control associated with an appropriate application window thatcan be placed within the user interface such that the appropriateapplication window is launched in the user interface.

FIG. 2 illustrates two application windows 200 and 202 in anotherexample user interface screen 204 supported by a content-baseddirectional placement application launch feature. The application window200 presents a search result window displaying search results from a Websearch engine. The individual search results (such as a search result208) include representative text and/or one or more images along with abrowser navigable link, which can be selected by the user for navigationto a Web site identified by the browser navigable link. The searchresult 208 includes a number of images including an image 210 that theuser wishes to view in an image-viewing application.

To view the image 210 in the image-viewing application, the userinitiates a directional placement instruction, such as by selecting anddragging the image 210 using a pointing device, touchscreen, touchpad,etc. When a conversion module 212 recognizes that the user is initiatingthe directional placement instruction, the conversion module 212converts the image 210 into a placeable representation (not shown) ofthe image-viewing application. The user commits to the directionalplacement instruction by placing the placeable representation of theimage-viewing application in a selected area of the interface screen 204(e.g., by releasing the button on the pointing device or removing his orher finger from the touch screen). In response, the window managementsystem 206 launches a new window 202 of the image-viewing application inthe user-selected area that displays the selected image 210.

FIG. 3 illustrates an example sequence of user interface operationsimplementing a content-based directional placement application launchfeature. At 304, a user selects a notification window 310 that hasappeared in the top right corner of an open window of an applicationreferred to as App A. A window for another application referred to asApp B is open alongside of the window for the App A.

At 306, the user initiates a directional placement instruction bydragging the selected notification window 310 to the left toward thewindow of App B. Such action indicates to a conversion module (notshown) that the user would like to launch a new application (e.g., anemail application) to view information (e.g., an email) associated withthe selected notification window 310.

Responsive to the user's initiation of the directional placementinstruction, the conversion module converts the selected notificationwindow 310 into a placeable representation 314 (e.g., an envelopegraphic) of an application associated with the selected notification(e.g., default mail application), as shown at 306. In oneimplementation, the selected notification window 310 is not visuallydistinguishable from the placeable representation 314 of theapplication. Thus, the user may not receive an indication that suchconversion has occurred. However, in other implementations (such as thatshown in FIG. 3) the placeable representation 314 of the application isvisually distinguishable from the selected visible content. In otherimplementations, other visual effects (e.g., changes in size, color,transparency, use of iconic graphics, etc.) are utilized to inform theuser that such conversion has occurred. For example, where multiplehomogeneous visual content items (e.g., Excel files) are selectedtogether, the placeable representation 314 may be an icon representativeof the file type (e.g., the Excel file iconography) with a numeraloverlay indicating the number of files selected. Alternatively, wheremultiple heterogeneous visual content items are selected together, theplaceable representation 314 may be a generic file icon.

In yet another implementation, the application windows may be launchedin response to the initiation of the directional placement instruction,such that the placeable representation of the application is thelaunched application window itself, which is placed according to thedirectional placement instruction. In such an implementation, thelaunched application window, in its placeable form, may be a full sizelive version of the launched application window, a snapshot of thelaunched application window, or a miniaturized (live or snapshot)version of the launched application window.

Responsive to the initiation of the directional placement instruction,the window management system highlights the boundary of the applicationwindow for App A (as shown at 306) to indicate that it is interpretingthe dragging instruction as an instruction to replace the applicationwindow for App A with a window of the application associated with theselected notification window 310 (e.g., the mail application). If theuser commits to this instruction (e.g., by releasing the button on thepointing device or removing his or her finger from the touch screen)while the application window for App A is highlighted, the windowmanagement system removes the placeable representation 314 of theapplication from the user interface and replaces the application windowfor the App A with a newly launched application window of the mailapplication (e.g., a window for an App C), as shown at 308.

FIG. 4 illustrates another example sequence of user interface operationsimplementing a content-based directional placement application launchfeature. At 404, the user selects visible content 410 (e.g., an image)that appears in an open window of an application referred to as App A. Awindow for another application referred to as App B is open alongside ofthe window for the App A. The applications App A and App B are separatedby a window boundary control 408.

As shown at 404, the user initiates a directional placement instructionby dragging the selected visible content 410 to the right toward thewindow of App B. Such action indicates to a conversion module (notshown) that the user would like to launch a new application to view,edit, or otherwise utilize the selected visible content or informationassociated with the selected visible content.

Responsive to the user's initiation of the directional placementinstruction, the conversion module converts the selected visible content410 into a placeable representation 414 of an application associatedwith the selected visible content 410 (e.g., a representation of anapplication App C), as shown at 406. As the user is dragging theselected visible content 410, the selected visible content 410transforms into a graphical representation of the App C so that the useris aware that a window management system is awaiting instruction.

The application associated with the selected visible content (i.e., theassociated application) (e.g., App C) is an application that the windowmanagement system associates with a recognized format of the selectedvisible content. In some cases, the associated application is a defaultapplication associated with a recognized file format of the selectedvisible content that may be used to view, edit or otherwise utilize theselected visible content. For example, the window management system mayassociate a photo viewing or editing application with selected visiblecontent that is a recognized photo format (e.g., .jpg, .tiff, .png, gif,etc.). Alternatively, the window management system may associate a wordediting application with selected visible content that is textual innature. Further, the window management system may associate a videoviewing application with selected visible content that is a recognizedvideo format (e.g., .mpg. .wmv, .mp4, .mov, .swf, etc.).

Responsive to the initiation of the directional placement instruction,the window management system highlights the boundary of the applicationwindow for App A, as shown at 406, to indicate that it is interpretingthe instruction as an instruction to replace the application window forApp A with the application window for App C. If the user commits to thisinstruction (e.g., by releasing the button on the pointing device orremoving his or her finger from the touch screen) while the applicationwindow for App A is highlighted, the window management system removesthe placeable representation 414 of the associated application from theuser interface and replaces the application window for the App A withthe newly launched application window for the App C.

However, as shown at 412, the user continues to drag the placeablerepresentation 414 of the associated application into the window for AppB. Accordingly, the window management system removes the highlight ofthe boundary of the application window for App A and highlights theboundary of the application window for App B to indicate that it isinterpreting the instruction as an instruction to replace theapplication window for App B with the application window for App C. Ifthe user commits to this instruction (e.g., by releasing the button onthe pointing device or removing his or her finger from the touch screen)while the application window for App B is highlighted, the windowmanagement system removes the placeable representation 414 of theassociated application from the user interface and replaces theapplication window for the App B with the newly launched applicationwindow for the App C, as shown at 416.

While the previous description presents the newly launched applicationwindow for App C replacing the application window for App B, anotherimplementation may result in the newly launched application window forApp C being inserted between the applications windows for App A and B orinserted at an edge of the user interface (e.g., top edge, bottom edge,right edge, left edge).

The newly launched application window of App C includes the selectedvisible content 410 (e.g., the photo) or content associated with theselected visible content. The content of the newly launched applicationwindow of App C may be directly associated with the selected visiblecontent. For example, if the selected visible content is a notification,then information related to the notification may be displayed in thenewly launched application window. Alternatively, content of the newlylaunched application window of App C may be indirectly related to theselected visible content. For example, if the selected visible contentis an application shortcut, the newly launched application window may bea default window of the related application. The content of the newlylaunched application window of App C may depend on one or both of theselected content and the context of the directional placementinstructions (e.g., a drag to the top of the user interface may resultin the presentation of different content than a drag to the right of theuser interface). In yet another implementation, the application windowfrom which the content is selected may suggest a handler for theselected content, which can launch an application window deemedappropriate by the handler.

Although App C is illustrated as an application that is different fromApp A and App B, the application launched responsive to the directionalplacement instruction may also be a new window of an already executingapplication (e.g., a new window of App A or App B).

While dragging (whether by touch, by a point device, etc.) is presentedas an example of a directional placement instruction, other suchinstructions are contemplated. For example, a user may issue adirectional placement instruction by selecting (whether by touch, by apoint device, by keyboard, etc.) the application window he or she wishesto be replaced.

In circumstances in which the window management system is unable tointerpret the directional placement instruction, the window managementsystem may present a placement prompt (not shown) to the user via theuser interface screen. The placement prompt may solicit input from theuser to assist the window management system in launching the applicationwindow within the layout of the user interface. The user may provideinput to the placement prompt in various ways. For example, the user mayselect a portion of the prompt that overlays the application window heor she wishes to be replaced. In another example, the user can gestureto or from a boundary of the application screen to indicate the desiredplacement.

FIG. 5 illustrates example operations 500 for implementing acontent-based directional placement application launch feature. Adetection operation 502 detects an action indicating that a directionalplacement instruction is being initiated. The action detected isassociated with content visible to a user in a first application windowof a user interface screen. The detection operation 502 may beresponsive to a user's selection of such visible content and/oradditional user input (e.g., keyboard input, touchscreen manipulation ofthe selected visible content, etc.).

In response to the detection operation 502, a conversion operation 504converts the selected visible content of the first application windowinto a placeable representation of an application (i.e., the associatedapplication) that is associated with the selected visible content. Theplaceable representation of the associated application may or may not bevisually distinguishable from the selected visible content on the userinterface screen. The associated application is an application that maybe used to view, edit or otherwise utilize the selected visible contentor content associated with the selected visible content.

Another receiving operation 506 receives the directional placementinstruction, which includes one or more constraints indicating aplacement within the user interface screen with which to display a newwindow of the application associated with the selected visible context.A presenting operation 508 presents a second application window on theuser interface screen based on the directional placement instruction.The second application window is a window of the associated applicationthat displays the selected visible content or content associated withthe selected visible content.

FIG. 6 illustrates an example system that may be useful in implementingthe described technology. The example hardware and operating environmentof FIG. 6 for implementing the described technology includes a computingdevice, such as general purpose computing device in the form of a gamingconsole or computer 20, a mobile telephone, a personal data assistant(PDA), a set top box, or other type of computing device. In theimplementation of FIG. 6, for example, the computer 20 includes aprocessing unit 21, a system memory 22, and a system bus 23 thatoperatively couples various system components including the systemmemory to the processing unit 21. There may be only one or there may bemore than one processing unit 21, such that the processor of computer 20comprises a single central-processing unit (CPU), or a plurality ofprocessing units, commonly referred to as a parallel processingenvironment. The computer 20 may be a conventional computer, adistributed computer, or any other type of computer; the implementationsare not so limited.

The system bus 23 may be any of several types of bus structuresincluding a memory bus or memory controller, a peripheral bus, aswitched fabric, point-to-point connections, and a local bus using anyof a variety of bus architectures. The system memory may also bereferred to as simply the memory, and includes read only memory (ROM) 24and random access memory (RAM) 25. A basic input/output system (BIOS)26, containing the basic routines that help to transfer informationbetween elements within the computer 20, such as during start-up, isstored in ROM 24. The computer 20 further includes a hard disk drive 27for reading from and writing to a hard disk, not shown, a magnetic diskdrive 28 for reading from or writing to a removable magnetic disk 29,and an optical disk drive 30 for reading from or writing to a removableoptical disk 31 such as a CD ROM, DVD, or other optical media.

The hard disk drive 27, magnetic disk drive 28, and optical disk drive30 are connected to the system bus 23 by a hard disk drive interface 32,a magnetic disk drive interface 33, and an optical disk drive interface34, respectively. The drives and their associated tangiblecomputer-readable media provide nonvolatile storage of computer-readableinstructions, data structures, program modules and other data for thecomputer 20. It should be appreciated by those skilled in the art thatany type of tangible computer-readable media which can store data thatis accessible by a computer, such as magnetic cassettes, flash memorycards, digital video disks, random access memories (RAMs), read onlymemories (ROMs), and the like, may be used in the example operatingenvironment.

A number of program modules may be stored on the hard disk, magneticdisk 29, optical disk 31, ROM 24, or RAM 25, including an operatingsystem 35, one or more application programs 36, other program modules37, and program data 38. A user may enter commands and information intothe personal computer 20 through input devices such as a keyboard 40 andpointing device 42. Other input devices (not shown) may include amicrophone (e.g., for voice input), a camera (e.g., for a natural userinterface (NUI)), a joystick, a game pad, a satellite dish, a scanner,or the like. These and other input devices are often connected to theprocessing unit 21 through a serial port interface 46 that is coupled tothe system bus, but may be connected by other interfaces, such as aparallel port, game port, or a universal serial bus (USB). A monitor 47or other type of display device is also connected to the system bus 23via an interface, such as a video adapter 48. In addition to themonitor, computers typically include other peripheral output devices(not shown), such as speakers and printers.

The computer 20 may operate in a networked environment using logicalconnections to one or more remote computers, such as remote computer 49.These logical connections are achieved by a communication device coupledto or a part of the computer 20; the implementations are not limited toa particular type of communications device. The remote computer 49 maybe another computer, a server, a router, a network PC, a client, a peerdevice or other common network node, and typically includes many or allof the elements described above relative to the computer 20, althoughonly a memory storage device 50 has been illustrated in FIG. 6. Thelogical connections depicted in FIG. 6 include a local-area network(LAN) 51 and a wide-area network (WAN) 52. Such networking environmentsare commonplace in office networks, enterprise-wide computer networks,intranets and the Internet, which are all types of networks.

When used in a LAN-networking environment, the computer 20 is connectedto the local network 51 through a network interface or adapter 53, whichis one type of communications device. When used in a WAN-networkingenvironment, the computer 20 typically includes a modem 54, a networkadapter, a type of communications device, or any other type ofcommunications device for establishing communications over the wide areanetwork 52. The modem 54, which may be internal or external, isconnected to the system bus 23 via the serial port interface 46. In anetworked environment, program engines depicted relative to the personalcomputer 20, or portions thereof, may be stored in the remote memorystorage device. It is appreciated that the network connections shown areexample and other means of and communications devices for establishing acommunications link between the computers may be used.

In an example implementation, software or firmware instructions and datafor providing a window management system, a content-based directionalplacement application launch feature, a conversion module, windowplacement parameters and other data may be stored in memory 22 and/orstorage devices 29 or 31 and processed by the processing unit 21. Thewindow placement parameters and other data may be stored in memory 22and/or storage devices 29 or 31 as persistent datastores.

Some embodiments may comprise an article of manufacture. An article ofmanufacture may comprise a tangible storage medium to store logic.Examples of a storage medium may include one or more types ofcomputer-readable storage media capable of storing electronic data,including volatile memory or non-volatile memory, removable ornon-removable memory, erasable or non-erasable memory, writeable orre-writeable memory, and so forth. Examples of the logic may includevarious software elements, such as software components, programs,applications, computer programs, application programs, system programs,machine programs, operating system software, middleware, firmware,software modules, routines, subroutines, functions, methods, procedures,software interfaces, application program interfaces (API), instructionsets, computing code, computer code, code segments, computer codesegments, words, values, symbols, or any combination thereof. In oneembodiment, for example, an article of manufacture may store executablecomputer program instructions that, when executed by a computer, causethe computer to perform methods and/or operations in accordance with thedescribed embodiments. The executable computer program instructions mayinclude any suitable type of code, such as source code, compiled code,interpreted code, executable code, static code, dynamic code, and thelike. The executable computer program instructions may be implementedaccording to a predefined computer language, manner or syntax, forinstructing a computer to perform a certain function. The instructionsmay be implemented using any suitable high-level, low-level,object-oriented, visual, compiled and/or interpreted programminglanguage.

The implementations described herein are implemented as logical steps inone or more computer systems. The logical operations may be implemented(1) as a sequence of processor-implemented steps executing in one ormore computer systems and (2) as interconnected machine or circuitmodules within one or more computer systems. The implementation is amatter of choice, dependent on the performance requirements of thecomputer system being utilized. Accordingly, the logical operationsmaking up the implementations described herein are referred to variouslyas operations, steps, objects, or modules. Furthermore, it should beunderstood that logical operations may be performed in any order, unlessexplicitly claimed otherwise or a specific order is inherentlynecessitated by the claim language.

The above specification, examples, and data provide a completedescription of the structure and use of exemplary implementations. Sincemany implementations can be made without departing from the spirit andscope of the claimed invention, the claims hereinafter appended definethe invention. Furthermore, structural features of the differentexamples may be combined in yet another implementation without departingfrom the recited claims.

What is claimed is:
 1. A method comprising: detecting a selection ofvisible content of a first application window within a user interface;detecting an initiation of a directional placement instruction regardingthe selected visible content of the first application window within theuser interface; converting the selected visible content of the firstapplication window within the user interface into a placeable controlassociated with the selected visible content responsive to theinitiation of the directional placement instruction; detectingcompletion of the directional placement instruction after conversion ofthe selected visible content of the first application window within theuser interface into the placeable control; and launching a secondapplication window associated with the selected visible content, thelaunching being triggered by the detection of the completion of thedirectional placement instruction.
 2. The method of claim 1, wherein thedirectional placement instruction comprises dragging the selectedvisible content to a third application window.
 3. The method of claim 2,wherein an application launched responsive to the directional placementinstruction comprises a new window of an already executing application.4. The method of claim 3, wherein the third application window comprisesa window of the already executing application.
 5. The method of claim 2,wherein the first application window and the third application windoware separated by a window boundary control.
 6. The method of claim 2,wherein launching the second application window comprises replacing thethird application window with the second application window.
 7. Themethod of claim 1, wherein the placeable control is visuallydistinguishable from the selected visible content.
 8. The method ofclaim 7, wherein the placeable control is visually distinguishable fromthe selected visible content based on size.
 9. The method of claim 7,wherein the placeable control is visually distinguishable from theselected visible content based on graphics.
 10. A system comprising: aprocessor; and a computer-readable medium storing instructions that areoperative upon execution by the processor to: detect a selection ofvisible content of a first application window within a user interface;detect an initiation of a directional placement instruction regardingthe selected visible content of the first application window within theuser interface; convert the selected visible content of the firstapplication window within the user interface into a placeable controlassociated with the selected visible content responsive to theinitiation of the directional placement instruction; detect completionof the directional placement instruction after conversion of theselected visible content of the first application window within the userinterface into the placeable control; and launch a second applicationwindow associated with the selected visible content, the launching beingtriggered by the detection of the completion of the directionalplacement instruction.
 11. The system of claim 10, wherein thedirectional placement instruction comprises dragging the selectedvisible content to a third application window.
 12. The system of claim11, wherein an application launched responsive to the directionalplacement instruction comprises a new window of an already executingapplication.
 13. The system of claim 12, wherein the third applicationwindow comprises a window of the already executing application.
 14. Thesystem of claim 11, wherein launching the second application windowcomprises replacing the third application window with the secondapplication window.
 15. The system of claim 10, wherein the placeablecontrol is visually distinguishable from the selected visible contentbased on size and/or graphics.
 16. One or more computer storage deviceshaving computer-executable instructions stored thereon, which, onexecution by a computer, cause the computer to perform operationscomprising: detecting a selection of visible content of a firstapplication window within a user interface; detecting an initiation of adirectional placement instruction regarding the selected visible contentof the first application window within the user interface; convertingthe selected visible content of the first application window within theuser interface into a placeable control associated with the selectedvisible content responsive to the initiation of the directionalplacement instruction; detecting completion of the directional placementinstruction after conversion of the selected visible content of thefirst application window within the user interface into the placeablecontrol; and launching a second application window associated with theselected visible content, the launching being triggered by the detectionof the completion of the directional placement instruction.
 17. The oneor more computer storage devices of claim 16, wherein the directionalplacement instruction comprises dragging the selected visible content toa third application window.
 18. The one or more computer storage devicesof claim 17, wherein an application launched responsive to thedirectional placement instruction comprises a new window of an alreadyexecuting application.
 19. The one or more computer storage devices ofclaim 18, wherein the third application window comprises a window of thealready executing application.
 20. The one or more computer storagedevices of claim 16, wherein the placeable control is visuallydistinguishable from the selected visible content based on size and/orgraphics.